home *** CD-ROM | disk | FTP | other *** search
-
- ~4Dgifts/toolbox/src/tutorials/custEducation README
-
- Copyright 1991, 1992, 1993, Silicon Graphics, Inc.
- Technical Education Development
- All Rights Reserved.
-
-
- Previously, this subtree consisted of the graphics tutorials available
- to people who attended SGI's 4D Graphics and Advanced Graphics courses.
- All this code was written using true-blue Iris GL. As of Irix 5.1 and
- beyond, they have been "retired" and a new set of programs have been
- and are being developed all being implemented in OpenGL. At present,
- this new tree contains:
-
-
- opengl1:
-
- OpenGL Programming 1 Course -- Sample Programs
-
- This subtree contains the software included in the OpenGL
- Programming 1 class course materials available through SGI's
- customer education program.
-
-
- This subtree contains two libraries, a checkVisual utility
- program, plus src and binaries demonstrating the following:
-
- 01.Windows
- Programs that demonstrate how to create windows and set the
- background color.
-
- 02.Rendering
- Programs that demonstrate the basic drawing primitives, and
- flat and gouraud shading them.
-
- 03.Viewports
- Programs that demonstrate how to set the viewport and the
- effect of the aspect ratio.
-
- 04.Transformations
- Programs that demonstrate how to rotate, scale and translate
- objects, and set the projection matrix.
-
- 05.Scene.Modeling
- Programs that demonstrate how to use use the basic
- transformations to model a scene. Also, demonstrates how the
- ordering of effects the net result, and how transformations
- can be kept independent using glPushMatrix/glPopMatrix.
-
- 06.Depth.Buffering
- Programs that demonstrate how to use the depth buffer.
-
- 07.Viewing
- Programs that demonstrate how to use gluLookAt() or use the
- basic transformations to create a polarview viewing
- perspective.
-
- 08.Animation
- Programs that demonstrate how to animate a scene without
- flicker.
-
- 09.Input
- Programs that demonstrate how to get input from the mouse and
- keyboard, and how to use the mouse position to animate objects.
-
- 10.Anti-aliasing
- Programs that demonstrate how to render objects without the
- "jaggies".
-
- 11.Text
- Programs that demonstrate how to render a text string and make
- sure that it doesn't get clipped prematurely when the raster
- position goes outside the window.
-
- 12.Lighting.Basics
- Programs that demonstrate how to enable basic lighting and set
- the normals.
-
- 13.Lighting.Properties
- Programs that demonstrate how to set lighting properties, such
- as color, and position, and material properties. Also,
- programs that show how to position the lights so that it is
- fixed in the scene, moves with the scene, or moves independently
- of the objects in the scene.
-
- 14.Advanced.Lighting
- Programs that demonstrate how to enable 2-sided lighting, make
- faster material changes, and enable spotlights.
-
-
-
- opengl2:
-
- OpenGL Programming 2 Course -- Sample Programs
-
- This subtree contains the software included in the OpenGL
- Programming 2 class course materials available through SGI's
- customer education program.
-
-
- two libraries, a checkVisual utility program, plus src and
- binaries demonstrating the following in OpenGL-speak:
-
- * accum:
- programs implementing the accumulation buffer to
- achieve effects of scene anti-aliasing, depth-of-field,
- and motion blur.
-
-
- * alpha:
- programs implementing alpha blending functionalities
- including a demonstration of how the depth-buffer and
- spotlights interact.
-
-
- * clipping:
- demonstrates defining and using arbitrary clipping planes.
-
-
- * dlists:
- programs implementing display lists including an
- example performing benchmarking which can be run in
- either immediate or display list mode, lighting done
- with display lists, and creating an outline font and
- displaying it using glCallLists().
-
- * feedback
- demonstrates use of OpenGL feedback, where one can toggle
- in and out of feedback mode.
-
- * fly
- program lets user "fly" through a simple virtual world.
- Input controls enable toggling autopilot, alpha blending,
- drawing surface normals, reset eye position, as well as
- MOUSE buttons to move the eyepoint and SPACE bar to cycle
- wireframe/flat shaded/smooth shaded.
-
- * fog
- demonstrates using different types of fog including
- exponential, exponential squared, and linear as well
- as altering the density value.
-
- * nurbs
- demonstrates implementing nurbs. Includes various
- methods of drawing a rotating NURBS surface where one
- can toggle display list/immediate mode and filled/
- wireframe/patch mode, as well as drawing a NURBS curve
- and 2 other different NURBS surfaces.
-
- * raster
- programs implementing raster positioning and pixel
- operations, including creating a collage images,
- implementations of the glCopyPixels() and
- glPixelZoom() routines, plus displaying an rgb image
- and file (and a subimage) in a window and writing
- pixel data from the window to an image file.
-
- * selection
- two programs: 1 demonstrates picking, and the other,
- selection.
-
- * stencils
- demonstrates a simple application of the stencil planes
- to mask an arbitrary screen area.
-
- * superfly
- program lets user "fly" through a simple virtual world.
- Input controls enable toggling autopilot, alpha blending,
- cycle thru clipping plane modes, debug mode (print
- coords), fog, display raster image, drawing surface
- normals, reset eye position, selection culling, and
- texture mapping, as well as MOUSE buttons to move the
- eyepoint, pick a shape and SPACE bar to cycle wireframe/
- flat shaded/smooth shaded.
-
- * texture
- programs demonstrating implementing textures, including
- using textures with alpha values, using gluBulid2dMipmaps()
- to scale and load mipmaps for a single texture image and
- then applying this to a polygon; reading a texture from an
- rgb file, setting up the texture and a sphere map texture
- environment and then applying them; as well as a second
- version using automatically generated texture coordinates;
- reading in a texture from an rgb file, setting the texture
- and the texture environment, then applying the texture to
- a rectangular polygon using explicit texture coordinates;
- and a demonstration of storing textures in display lists
- where the objects are drawn using environment mapping.
-
-